/*
 * EstudiantePoo.h
 *
 *  Created on: Nov 8, 2012
 *      Author: Carlos Alegría
 */

#ifndef ESTUDIANTEPOO_H_
#define ESTUDIANTEPOO_H_

#include "Persona.h"
#include "Estudiante.h"
#include "Empleado.h"

namespace poo
{

  class EstudiantePoo : public Estudiante, public Empleado
  {

    friend ostream &
    operator<<(ostream &, const EstudiantePoo *);

  public:
    EstudiantePoo(const string &nombreCompleto, const string &direccion,
        int edad, const string &rfc, const string &empresa,
        const string &noDeCuenta, NivelDeEstudios nivel, int semestre,
        int noAlegria);
    virtual
    ~EstudiantePoo();

    int
    getNoAlegria() const
    {
      return noAlegria;
    }

    void
    setNoAlegria(int noAlegria)
    {
      this->noAlegria = noAlegria;
    }

    int
    getParticipaciones() const
    {
      return participaciones;
    }

    inline void
    agregarParticipacion()
    {
      this->participaciones++;
    }

  private:
    int noAlegria;
    int participaciones;
  };

} /* namespace poo */
#endif /* ESTUDIANTEPOO_H_ */
